This page last changed on Oct 17, 2006 by juanca.

En una Gramatica sensible al contexto, cada producción tiene la forma:

γΑβ→γωβ

donde:

Α ∈ N
γ, β ∈ (N ∪ T)*
ω ∈ (N ∪ T)+

Es decir, se permite el reemplazo del no-terminal Α en el lado izquierdo de la producción por la Forma Sentencial ω sólo en el contexto γ_β. La gramática puede contener también la producción S?ε si el lenguaje que se requiere generar contiene la cadena vacía, pero solo si S no aparece en el lado derecho de alguna producción.

Definición alternativa

Otra definición de gramática sensitiva al contexto es el de la clase de gramáticas con la restricción de que para toda regla:

α→β

se cumple que:

|α| ≤ |β|

Tal gramática también se llama monotónica o no-contractiva porque ninguna e las reglas disminuye el tamaño de la Forma Sentencial que está siendo derivada.

La clase de las gramáticas no-contractivas no es exactamente igual a la de las sensitivas al contexto porque las primeras no pueden generar secuencias vacías, pero ambas clases pueden hacerse equivalentes permitiendo una producción S→ε en las gramáticas no-contractivas.

Ejemplo

L 4 ={a n b n c n / n > 0}
G 4 = ({A,B,C}, {a,b,c}, S4, P4)

donde P4 contiene las siguientes producciones:

  1. S4→A
  2. A→aABC
  3. A→abC
  4. CB→BC
  5. bB→bb
  6. bC→bc
  7. cC→cc

Derivacion de la Cadena a 3 b 3 c 3:

S41 A
A2 aABC
a A BC ⇒2 a aABC BC
aa A BCBC ⇒3 aa abC BCBC
aaab CB CBC ⇒4 aaab BC CBC
aaabBC CB C ⇒4 aaabBC BC C
aaabB CB CC ⇒4 aaabB BC CC
aaa bB BCCC ⇒5 aaa bb BCCC
aaab bB CCC ⇒5 aaab bb CCC
aaabb bC CC ⇒6 aaabb bc CC
aaabbb cC C ⇒7 aaabbb cc C
aaabbbc cC7 aaabbbc cc

Document generated by Confluence on Oct 04, 2010 11:25